迴圈方塊 | 樂高機器人EV3使用說明
迴圈方塊
![]() |
迴圈方塊是可以容納程式方塊序列的容器。它會使所含的方塊序列重覆執行。可以選擇不斷重覆執行方塊、重覆特定次數或是直至感應器測試或其他條件爲“是”。 只有迴圈內的方塊會重覆執行。在迴圈結束後,程式會繼續執行迴圈之後的方塊。 |
提示和技巧
拖動方塊可在迴圈內移動它們。迴圈方塊會擴展以便爲內部的方塊騰出空間。
模式
範例 1

此程式使機器人反複按交替的直行/轉彎順序驅動,直至程式停止。
提示和技巧
使用 EV3 上的“返回”按鈕可停止程式。
提示和技巧
可以使用下面介紹的感應器模式,通過迴圈方塊直接測試許多僅涉及一個感應器的感應器測試。
迴圈方塊包含讀取感應器資料並將其與輸入值進行比較的幾個模式。每種感應器類型具有不同模式。某些類型的感應器資料可以與預設值進行比較,其他類型可以與某些特定值進行比較。
將感應器資料與預設值進行比較
在具有預設值輸入的模式中,迴圈方塊會重覆迴圈內的方塊序列,直至預設值比較爲“是”。例如,可以使迴圈重覆,直至顔色感應器檢測到小於指定預設值的反射光線強度值。

模式選擇
連接埠選擇
“比較類型”輸入
“預設值”輸入
使用模式選擇可選擇具有預設值輸入的感應器模式。如果模式使用連接埠,則使用連接埠選擇確保連接埠與感應器或馬達連接到的 EV3 主機上的連接埠匹配。
從比較類型列表中選擇要使用的比較類型,然後輸入預設值。
每當迴圈內的方塊序列完成時,迴圈方塊會讀取感應器資料並測試預設值。如果測試在當時爲“否”,則迴圈會重覆。如果測試爲“是”,則迴圈會結束,並且程式會繼續執行迴圈之後的下一個方塊。
有關使用不同感應器類型及它們提供的資料的更多資訊,請參考“使用感應器”幫助文章。





使用模式選擇可選擇具有預設值輸入的感應器模式。如果模式使用連接埠,則使用連接埠選擇確保連接埠與感應器或馬達連接到的 EV3 主機上的連接埠匹配。
從比較類型列表中選擇要使用的比較類型,然後輸入預設值。
每當迴圈內的方塊序列完成時,迴圈方塊會讀取感應器資料並測試預設值。如果測試在當時爲“否”,則迴圈會重覆。如果測試爲“是”,則迴圈會結束,並且程式會繼續執行迴圈之後的下一個方塊。
有關使用不同感應器類型及它們提供的資料的更多資訊,請參考“使用感應器”幫助文章。
範例

此程式使機器人向前驅動,同時重覆三種不同聲音,直至顔色感應器檢測到小於 50 的反射光線強度,然後停止機器人。
提示和技巧
僅在迴圈序列結束時測試感應器預設值。在上面的範例中,如果顔色感應器在迴圈中短暫通過深色,則機器人可能不會看到它並且不會停止
將感應器資料與特定值進行比較
以下感應器模式允許迴圈將感應器資料與特定輸入值進行比較。迴圈會重覆,直至感應器資料等於指定輸入值。
模式 | 備註 |
---|---|
主機按鈕 | 迴圈會重覆,直至所選按鈕之一執行所選動作。 請參考使用主機按鈕。 |
顔色感應器 - 顔色 | 迴圈會重覆,直至檢測到所選顔色之一。 請參考使用顔色感應器。 |
紅外線感應器 - 遠程 | 迴圈會重覆,直至壓下下 IR 訊號上的所選按鈕之一。 請參考使用紅外線感應器“遠程”模式。 |
觸碰感應器 | 迴圈會重覆,直至觸碰感應器處於所選狀態。 請參考使用觸碰感應器。 |
超音波感應器 - 存在 | 迴圈會重覆,直至檢測到超音波信號。 請參考使用超音波感應器。 |
訊息傳遞 | 迴圈會重覆,直至收到指定訊息類型。 請參考訊息傳遞方塊。 |
提示和技巧
僅在迴圈序列結束時測試感應器。如果感應器資料在迴圈序列執行期間僅短暫地與指定輸入值匹配,則迴圈可能不會停止。
範例

此迴圈方塊正在調整大小,以便爲其中的第二個方塊序列騰出空間。
可用於迴圈方塊的輸入取決於所選模式。可以將輸入值直接輸入到方塊中。或者,可以通過資料線從其他程式方塊的輸出提供輸入值。
迴圈方塊的輸出是迴圈已重覆的次數。要使用該輸出,請使用資料線將其連接到迴圈內部或之後的程式方塊。